import Vue from 'vue';
import Vuex from 'vuex';
import moduleCart from './cart.js';
import moduleUser from './user.js';

Vue.use(Vuex);
// 创建一个新的Vuex.Store实例，用于管理整个应用的状态
const store = new Vuex.Store({
    // 在store的配置对象中，通过modules属性来定义各个子模块
    // 这里分别引入了之前导入的购物车模块和用户模块，并给它们指定了模块名
    modules: {
        // 将购物车相关的模块挂载到名为m_cart的模块名下，这样在其他组件中访问购物车模块的状态、mutations、getters等时，就需要使用'm_cart'作为前缀
        m_cart: moduleCart,
        // 将用户相关的模块挂载到名为m_user的模块名下，同理，在其他组件中访问用户模块的内容时需要使用'm_user'作为前缀
        m_user: moduleUser
    }
});

// 将创建好的Vuex.Store实例导出，以便在其他文件（如Vue组件文件）中可以导入并使用这个store来获取和操作应用的状态
export default store;